import org.w3c.dom.ls.LSOutput;

import java.util.Arrays;

public class Test8 {
    //1.进行奇偶排序
    public static void fac(int[]ary){
        int left=0;
        int right=ary.length-1;
        while (left<right){
            while (left<right&&ary[left]%2!=0){
                left++;
            }
            while (left<right&&ary[right]%2==0){
                right--;
            }
            swp(ary,left,right);
        }
    }
    //2.在给定的整数数组中，找到两个元素的和等于目标值，并返回它们的下标。
    public static void swp(int[]ary,int i,int j){
        int tmp=ary[i];
        ary[i]=ary[j];
        ary[j]=tmp;
    }

    public static void main1(String[] args) {
        int[]ary=new int[]{1,2,3,4,5,6,7,8,9};
        fac(ary);
        System.out.println(Arrays.toString(ary));
    }
    public static int[]fac1(int[]ary,int tmp){
        int[]ret=new int[]{-1,-1};
        for (int i = 0; i < ary.length; i++) {
            for (int j= i+1; j <ary.length ; j++) {
                if(ary[i]+ary[j]==tmp){
                    ret[0]=i;
                    ret[1]=j;
                }
            }
        }
        return ret;
    }

    public static void main2(String[] args) {
        int[]ary=new int[]{1,3,5,7,6,9};
        int []ret=fac1(ary,8);
        System.out.println(Arrays.toString(ret));
    }
    //3.判断三个数组是否存在三个元素都是基数的情况；
    public static boolean fac3(int[]ary3){
        int count=0;
        for (int i = 0; i <ary3.length ; i++) {
            if (ary3[i]%2!=0){
                count++;
                if (count==3);
                return true;
            }
            else {
                count=0;
            }
        }
        return false;
    }

    public static void main3(String[] args) {
        int[]ary3=new int[]{1,2,3,7,9,8};
        System.out.println(fac3(ary3));
    }
    //4.二维数组中不能够省略行
    //int[][]ary4=new int[行][]//
    //不规则的二维数组
    public static void main(String[] args) {
        int[][]ary4=new int[2][];//只是创建了一个二维数组的 “壳”行数确定了但是还没有具体的长度，默认值是 null ，此时数组结构像这样：
                                    //ary4 = [null, null]（2 个元素都是未初始化的一维数组）。
        ary4[0]=new int[3];//给二维数组的每一行，实际分配可存储数据的一维数组空间，让二维数组从 “只有行数，没有列数” 的状态，变成真正能存数据的结构
        ary4[1]=new int[3];
        String ret=Arrays.deepToString(ary4);
        System.out.println(ret);
    }
}
